package com.leiyuan.orders.service;

import com.leiyuan.orders.model.dto.AddOrderDto;
import com.leiyuan.orders.model.dto.PayRecordDto;
import com.leiyuan.orders.model.dto.PayStatusDto;
import com.leiyuan.orders.model.po.ElPayRecord;

/**
 * @author leiyuan
 * @version 1.0
 * 订单服务接口
 */
public interface OrderService {

    /**
     * 创建商品订单
     * @param addOrderDto 订单信息
     * @return PayRecordDto 支付交易记录(包括二维码)
     * @author leiyuan
     */
    public PayRecordDto createOrder(String userId, AddOrderDto addOrderDto);

    /**
     * 查询支付交易记录
     * @param payNo  交易记录号
     * @return com.leiyuan.orders.model.po.XcPayRecord
     * @author leiyuan
     */
    public ElPayRecord getPayRecordByPayno(String payNo);

    /**
     * 保存支付宝支付结果
     * @param payStatusDto  支付结果信息
     * @return void
     * @author leiyuan
     */
    public void saveAliPayStatus(PayStatusDto payStatusDto);
}
